// .txt

beginzonescript;

variables;

short crime_tolerance = 200;
short last_abil;
short i;
short presmes = 0;
short pres_level;
short old_level = 100;

body;

beginstate INIT_STATE;
	if (gf(6,9) == 0)
		sf(6,11,0);
	sf(6,14,0);
	
	set_aggression(8,8);
	set_aggression(9,8);
	set_aggression(10,8);
	set_aggression(11,8);
	set_aggression(12,8);
	set_aggression(13,8);
	set_aggression(14,8);
	set_aggression(15,8);
	set_aggression(16,8);
	
//	set_name(,"");

	add_range_to_group(17,21,1);
	set_aggression(1001,7);

	//if (get_sdf() > 0) {
		//make_zone_hostile();
		//}

	last_abil = get_current_tick();
	
	set_crime_tolerance(crime_tolerance);
	break;

beginstate EXIT_STATE;

break;

beginstate START_STATE;
	// clear zone?
	if ((zone_clear(ME) == FALSE) && (get_flag(6,9) > 0)) {
		print_str_color("Now that the Presence has been purged, this area is clear.",2);
		clear_zone(ME);	
		}
		
	//if ((get_crime_level() >= crime_tolerance) && (get_sdf(,) == 0)) {
	//	make_zone_hostile();
	//	set_flag(,,1);
	//	}

	//if (get_ran(1,0,100) < 10)
	//	give_char_text_bubble(,"");

	if (((is_combat()) && (tick_difference(last_abil,get_current_tick()) > 0)) || ((is_group()) && (tick_difference(last_abil,get_current_tick()) > 5))) {
		if ((is_group()) && (gf(6,9) == 0)) {
			if (presmes < 3) {
				presmes = presmes + 1;
				if (presmes == 3)
					begin_talk_mode(14);
				}
				else {
					pres_level = party_dist_to_nav(2) / 10;
					if (pres_level != old_level) {
						if (pres_level == 0)
							print_str_color("The scrying crystal is glowing very brightly.",3);
						if (pres_level == 1)
							print_str_color("The scrying crystal is glowing brightly.",3);
						if (pres_level == 2)
							print_str_color("The scrying crystal is glowing dimly.",3);
						if (pres_level > 2)
							print_str_color("The scrying crystal is glowing very faintly.",3);
							
						old_level = pres_level;
						}
					}
			}
		
		if (gf(6,14) > 0)
			inc_flag(6,14,-1);
		if (gf(6,0) > 0)
			inc_flag(6,0,-1);
			
		
		last_abil = get_current_tick();
		}

	// initial cutscene
	if ((get_flag(6,11) == 1) && (get_flag(6,12) < 4)) {
		move_to_loc(0,53,32);
		move_to_loc(1,52,33);
		move_to_loc(2,54,33);
		move_to_loc(3,51,34);
		move_to_loc(4,53,34);
		move_to_loc(5,55,34);
		move_to_loc(6,52,35);
		move_to_loc(7,54,35);
		shift_view_to_char(pc_num());

		if ((cutscene_can_proceed()) && (party_near_nav(0,5))) {
			inc_flag(6,12,1);
			if (gf(6,12) > 2)
				sf(6,22,0);
			}
		end();
		}
		else if (get_flag(6,12) == 4) { 
			sf(6,12,6);
			sf(6,11,2);
			sf(6,22,0);
			toggle_cutscene(0);
			begin_talk_mode(13);
			end();
			}
break;

beginstate 10;
	set_terrain_string_range("The sign says - Testing Halls. Rear Entrance.",3);
	break;

beginstate 11;
	set_terrain_string_range("The sign says - Testing Halls. Control Center.",3);
	break;

beginstate 12;
	set_terrain_string_range("The sign says - Testing Halls. Main Entrance.",3);
	break;

beginstate 13;
	set_terrain_string_range("The sign says - INCINERATOR.",3);
	break;

beginstate 14;
	set_terrain_string_range("The sign says - Please leave all samples on provided shelves. Incinerate refuse.",3);
	break;
	
//	print_str("");
//	set_terrain_string_range(".",3);
//	set_terrain_string_range("The sign says - .",3);
